Traditional network packet processing requires packets to traverse kernel space and then to user space applications. Due to overhead in kernel space such as system calls and TCP/IP stack, a high performance user space I/O pipeline can be utilized where a network interface card (NIC) directly receives and transmits packets to/from user space without requiring the packets to traverse the kernel space.
One limitation of such a user space I/O pipeline is that the user space owns the NIC. For management applications that rely on TCP/IP stack, a separate dedicated NIC has to be assigned for sending and receiving the packets that has to go through the TCP/IP stack in the kernel space. This requirement adds cost due to additional NIC hardware, additional switch ports, and the complexity of managing the additional hardware.